package com.cleaningcloud.cld.service.mini;

import com.cleaningcloud.cld.domain.CldEvaluate;
import com.cleaningcloud.cld.domain.dto.CldAssetsRecordDto;
import com.cleaningcloud.cld.domain.vo.CldAssetsRecordVo;
import com.cleaningcloud.cld.domain.vo.CldAssetsRepairVo;
import com.cleaningcloud.cld.domain.vo.CldEvaluateVo;

import java.util.List;

/**
 * @Author Shaw
 * @Description 小程序(客户端)-客户评价
 * @date: 2025-06-18 10:04
 * @param: //TODO
 */
public interface IMiniEvaluateService {

    /**
     * @Author Shaw
     * @Description 新增客户评价
     * @date: 2025-06-18 10:03
     * @param: //TODO
     */
    int insertEvaluate(CldEvaluate cldEvaluate);

    /**
     * @Author Shaw
     * @Description 根据日期获取客户对员工评价列表
     * @date: 2025-06-20 15:47
     * @param: //TODO
     */
    List<CldEvaluateVo> getCldEvaluateListByDate(CldEvaluateVo cldEvaluateVo);

    /**
     * @Author Shaw
     * @Description 根据日期获取客户对员工(综合)评价列表
     * @date: 2025-06-20 15:47
     * @param: //TODO
     */
    List<CldEvaluateVo> getCldEvaluateListByDateComprehensive(CldEvaluateVo cldEvaluateVo);

    /**
     * @Author Shaw
     * @Description 根据日期获取客户对项目评价列表
     * @date: 2025-06-20 15:47
     * @param: //TODO
     */
    List<CldEvaluateVo> getCldEvaluateListProject(CldEvaluateVo cldEvaluateVo);

    /**
     * @Author Shaw
     * @Description 根据评价ID获取详情（员工）
     * @date: 2025-06-20 15:47
     * @param: //TODO
     */
    CldEvaluateVo getCldEvaluateInfoById(Long evaluateId);

    /**
     * @Author Shaw
     * @Description 根据评价ID获取详情（项目）
     * @date: 2025-06-20 15:47
     * @param: //TODO
     */
    CldEvaluateVo getCldEvaluateInfoByProject(Long evaluateId);
}
